Linear adaptive equalizers having a plurality of taps are widely used in digital communication receivers in order to provide correction for multipath channel distortion. Adaptive algorithms, such as the least mean squares (LMS) algorithm, are typically implemented in order to determine the weight values for the taps of the equalizer. Such adaptive algorithms are easy to implement and provide reasonably good performance. However, under difficult channel conditions, these algorithms may fail to provide tap weights that converge to the desired values.
It is well known that this failure may be at least somewhat mitigated if the tap weights, instead of being initialized to values of zero as is often done, are instead initialized close to their final desired values based on a knowledge of the impulse response of the channel. An estimate of this channel impulse response (CIR) may be derived from an a priori known training sequence periodically transmitted prior to, and/or along with, the unknown data. One such system with this feature is specified in the ATSC 8VSB standard for digital terrestrial television broadcasting.
The channel impulse response is typically estimated in a receiver by cross-correlating the a priori known training sequence as received with a representation of the transmitted known training sequence stored in the receiver as a correlation reference. The Z-transform of the estimated channel impulse response is then derived and inverted. From the inverted Z-transform, a vector is formed having a plurality of elements, and these elements are used to initialize the corresponding tap weights of the equalizer.
More specifically, if s[k] is defined as the stored known training sequence for k=0 . . . (L−1), and if x[k] is defined as the received signal sampled at the symbol rate, with x[0] being the first received training symbol in the received signal, the cross-correlation h[m] is given by the following equation:
                                          h            ⁡                          [              m              ]                                =                                    ∑                              k                =                0                                            L                -                1                                      ⁢                                                  ⁢                                          s                ⁡                                  [                  k                  ]                                            ⁢                              x                ⁡                                  [                                      k                    +                    m                                    ]                                                                    ,                              for            ⁢                                                  -                          L              chan                                ≤          m          ≤                      L            chan                                              (        1        )            where Lchan is the length of the channel over which the correlation is taken. Lchan, for example, is typically set at 576. The Z-transform of h[m] is determined and is inverted in order to determine the tap weights for the taps of the equalizer.
This procedure addresses channel related noise. However, there are other sources of noise. For example, noise due to the finiteness of the cross-correlation as described in copending U.S. Pat. No. 7,110,447 and in copending U.S. Pat. No. 7,190,447 is present in the channel impulse response and can cause errors in the determination of the tap weights. As described in these applications, this noise due to the finiteness of the cross-correlation may be removed by cross-correlating a known stored training sequence with the received training sequence to produce a cross-correlation vector, by estimating a correction vector related to the finiteness noise component, and by iteratively subtracting truncated representations of the correction vector from the cross-correlation vector so as to produce a succession of cross-correlation outputs of increasing accuracy.
The channel impulse response can also contain data related noise. Data related noise arises in the channel impulse response because the stored version of the known training sequence is not only correlated with the received training sequence, but is also correlated with data received before and/or after the received training sequence.
The training sequence, for example, may be based on the frame sync segment of a digital television signal as specified in the ATSC digital television standard. As shown in FIG. 1, such a frame sync segment 10 comprises a first portion 12 containing four segment sync symbols, a second portion 14 containing 511 frame sync symbols, a third portion 16 containing a 63 pseudorandom symbol sequence replicated three times for a total of 189 symbols where the middle sequence is inverted in alternate fields, and a fourth portion 18 of reserved space for 24 symbols. The known training sequence (or reference), according to the example, may comprise the first 704 symbols in the frame sync segment 10. Thus, this training sequence comprises the four segment sync symbols of the first portion 12, the 511 frame sync symbols of the second portion 14 of the frame sync segment 10, and the 189 symbols in the three 63 pseudorandom symbol sequences for a total of 704 symbols.
As shown in FIG. 2, a cross-correlation based on this training sequence is implemented by shifting a training sequence 20, such as the 704 symbol training sequence described immediately above, over a received signal 22 that includes first data 24, the frame sync segment 26, and second data 28. As can be seen from FIG. 2 and as will be understood from equation (1) above, the resulting correlation h[m] contains some terms that involve only the training sequence and many terms that involve unknown data.
A representation of the correlation h[m] is shown in FIG. 3, where the noise related to the finiteness of the correlation has been removed. A peak 50 represents the single path received signal in the channel impulse response. As can be seen from FIG. 3, in the case where the stored reference sequence is shorter than the received training sequence, a portion 52 is the portion of the correlation involving only the training sequence, and portions 54 and 56 are portions of the correlation involving unknown data symbols. The portion 52 contains little or no noise and the portions 54 and 56 contain data related noise.
When a transmitted signal is received over multiple paths, this data related noise may be enhanced to the point where one or more of the multipath components (sometimes referred to as ghosts) are undetectable in the correlation. If so, the tap weights computed from such a channel impulse response will be unreliable.
The present invention is directed to the removal of this data related noise from the channel impulse response.